In the field of Business Intelligence and Information Technology (IT) management consulting, online analytical processing (OLAP) solutions are one type of solution that may be provided to customers. Today, many challenges exist in implementing OLAP based solutions at customer sites. For instance, highly skilled and experienced individuals are needed to install, configure, maintain, and customize the underlying OLAP technology to achieve the desired business benefit. The cost and availability of the human resources are limiting factors in the success of OLAP implementations in the enterprise. Even when organizations are initially successful in finding the right individuals to perform the initial installation of the OLAP technology, the market demand for such individuals often leaves the organizations unable to recover in the event that such individuals leave the organization.
FIG. 1 illustrates an example of such an OLAP implementation. This figure illustrates an online analytical processing (OLAP) system 100 that includes OLAP cubes 105, an interface layer 115, an OLAP viewer 120, and a data storage 125. The OLAP cubes 105 are multidimensional data structures that facilitate quick viewing of data from the data storage 125 through the OLAP cube viewer 120. Each OLAP cube 105 may require a different set of data from the data storage 125. Even when several OLAP cubes 105 require the same pieces of data, each of the OLAP cubes 105 may require the same pieces of data to be organized in different ways (e.g., different fields, different tables, different formats, etc.).
The interface layer 115 serves as a layer to (1) define a set of data in the data storage 125 for an OLAP cube 105 and (2) define the manner in which the set of data is organized for the OLAP cube 105. In other words, the interface layer 115 serves as a layer that links sets of data in the data storage 125 to the corresponding OLAP cubes 105. As shown in FIG. 1, the interface layer 115 of the OLAP system 100 includes custom defined interfaces 110. Specifically, a custom defined interface 110 exists in the interface layer 115 for each of the OLAP cubes 105. Each time an OLAP cube is installed in the OLAP system 100, highly skilled installer(s) (e.g., database system develop, database administrator, etc.) must manually create, configure, and define a custom defined interface 110 in order to install and deploy the OLAP cube in the OLAP system 100.
Typically, a custom defined interface 110 specifies one or more data sources for an OLAP cube 105, specifies the data from the data sources for the OLAP cube 105, and specifies the manner in which the data is organized. Highly skilled installer(s) configure the custom defined interface 110 to link the data source and the data in the data source to the OLAP cube. For instance, OLAP cube 1 is defined by data in the data storage 125. The definition of the OLAP cube 1 may require certain data (e.g., tables) be present in the data storage 125. Additionally, the definition of the OLAP cube 1 may require the data to be organized according to a particular schema (e.g., tables) in the data storage 125. As such, the highly skilled installer(s) must manually connect to the data storage 125 and specify data from the data source for the OLAP cube 1 according to the schema that the data is organized in the data storage 125. In this manner, the installer creates the custom defined interface 1 for the OLAP cube 1 to interface with the data in the data storage 125. To install the OLAP cubes 2-N, the installer performs similar techniques to create the custom defined interfaces 2-N for the OLAP cubes 2-N to interface with the data in the data storage 125.
Another challenge with OLAP systems is the deep technical knowledge that is required to create valuable OLAP cubes, and to design cubes that are compelling and easy to understand by their end users. Since OLAP cubes are very difficult to understand by end users, OLAP cubes are typically designed by database programmers who transpose database schemas into OLAP cubes. Today, there is a rather small community of people with the capability to build well-architected, business context specific OLAP cubes.